The invention relates to communications systems and methods, and, more particularly, to digital communications systems and associated methods over parallel communications channels.
Digital communications are widely used for the transmission of voice, data and video information. Such transmission can extend over large geographical distances, between components within a personal computer, or only between adjacent circuit portions on an integrated circuit. Certain such communications applications benefit from or require the conversion of serial data into parallel data for simultaneous transmission over parallel communications channels, or more generically, from M""ary symbols to N""ary symbols. At the receiving end, the parallel data is desirably converted back into the serial data, and with the bits or symbols in the correct order to avoid data errors.
Unfortunately, the demand for greater data transmission volumes and at ever higher speeds, may result in skew at the receiver. In other words, the parallel communications channels may introduce different delays to the parallel symbol strings they carry. Because of skew, the parallel symbol strings at the receiver can then no longer be simply reassembled into the starting data.
The skew problem with parallel communications channels has been addressed in a number of ways. For example, U.S. Pat. No. 4,677,618 to Haas et al. recognized the dispersion introduced by wavelength division multiplexed communications channels over optical fiber. This patent discloses determining the relative delays between the channels based upon detecting two bits in a given byte of data. The relative times of arrival of the remaining bits in a byte are predetermined using the relative delay between the two detected bits and the known frequency-related dispersion characteristics of the transmission medium. Certain bits in each received byte may then be delayed using clock delay lines or registers, thereby accounting for skew.
Along similar lines, U.S. Pat. No. 5,157,530 to Loeb et al. also determines and accounts for skew imparted by dispersion in fiber optic wavelength division multiplexing. Relative delays are used to control adjustable delay devices in each channel.
U.S. Pat. No. 5,408,473 to Hutchinson et al. is directed to a technique for synchronizing run-length-limited data transmitted over parallel communications channels. Block boundary synchronization is established during connection initialization by using a property of a required HALT code to detect block boundaries received in each channel. Skew compensation is effected by comparing the times of detection of the block boundaries in the two channels, and appropriately controlling a variable delay in at least one of the channels. If there is a subsequent loss of synchronization, detected transmission errors will eventually result in connection reinitialization and reestablishment of synchronization. Unfortunately, the transmission of the fixed HALT code to detect boundaries may result in false boundary detection. Moreover, since synchronization is not continuously maintained, the technique may be impractical for higher data rates.
U.S. Pat. No. 5,793,770 to St. John et al. is directed to a high-performance parallel interface (HIPPI) to a synchronous optical network (SONET) gateway, and wherein electronic logic circuitry formats data and overhead signals into a data frame for transmission over a fiber optic channel. Stripe skew adjustment is based upon SONET framing, and, as such, the circuitry is relatively complicated, comprising as many as 20,000 logic gates, for example.
The difficulty with skew caused by parallel communications channels is also an important issue to be addressed in communications channels between integrated circuit devices. For example, higher transmission speeds increase the sensitivity to skew, as there is a smaller time window to correctly identify a received bit and have it properly align with bits received on the other parallel communications channels.
To provide a higher aggregate transmission rate, the number of parallel communications channels can be increased, without increasing the speed of any given communications channel. However, this may result in significant costs for the additional communications channels. Moreover, for communications between integrated circuits, increasing the number of communications channels increases the number of pins needed for connecting the IC. The number of pins and additional packaging complexity may significantly increase the costs of such approaches.
For communications channels between physical layer devices (PLDs) or PHY devices, and logical link devices (LLDs), typical interfaces are asymmetrical and the devices are operated in a push-pull configuration. Because of the asymmetry, relatively expensive memory is required on the PLD since it is polled by the LLD, such as an asynchronous transfer mode (ATM) device. Further developments and improvements in the communications interface between a PLD and LLD are also hampered by the skew difficulty described above as a result of higher bit rates over limited parallel communications channels.
Another difficulty associated with conventional communications systems is that as the transmission rates increase, the costs of the transmission medium-to-electrical converters and vice-versa may become prohibitive. This may be especially so for fiber optic based communications systems. Moreover, skew has in the past limited using lower speed electronics to define a relatively large aggregate transmission rate over multiple parallel communications channels.
In view of the foregoing background, it is therefore an object of the present invention to provide a communications system and associated methods which permit lower cost electrical-to-transmission medium converters and transmission medium-to-electrical converters to be used while still providing a desired relatively high aggregate information throughput rate.
These and other objects, features and advantages in accordance with the present invention are provided by a communications system incorporating deskewing features and including a first device comprising a plurality of electrical-to-transmission medium converters, and a second device comprising a plurality of transmission medium-to-electrical converters. The transmission medium-to-electrical converters are to be connected to respective ones of the electrical-to-transmission medium converters via at least one transmission medium and defining parallel communications channels between the first and second devices.
More particularly, the first device preferably further comprises a string-based framing coder for determining and appending a string-based framing code to each information symbol string of information symbol strings to be transmitted in parallel over respective parallel communications channels, each string-based framing code being based upon at least some of the information symbols in the respective information symbol string. The second device preferably comprises a deskewer for aligning received information symbol strings based upon the string-based framing codes. Accordingly, lower rate converters can be used at significant costs savings and while providing a desired relatively high overall information throughput rate.
The electrical-to-transmission medium converters and the transmission medium-to-electrical converters may be for at least one wireline transmission medium, at least one wireless transmission medium, or at least one optical transmission medium. Of course the first device may further comprise a multiplexer for multiplexing signals from the plurality of electrical-to-transmission medium converters along a common transmission medium. In these embodiments, the second device preferably further comprises a demultiplexer connected to its transmission medium-to-electrical converters.
The information symbols may be binary bits, for example. Accordingly, in one particularly advantageous embodiment, the string-based coder comprises a cyclic redundancy checking (CRC) coder for determining and appending CRC codes to respective information bit strings. Thus, the deskewer preferably comprises a CRC framer for framing the information bit strings based upon the CRC codes. The deskewer may comprise a framer for framing information bit strings based upon the respective string-based framing codes, and an aligner for aligning framed information bit strings relative to one another and based upon the string-based framing codes. The aligner, in turn, may comprise at least one first-in-first-out (FIFO) device connected to the framer for buffering framed information bit strings. The aligner may also include a FIFO controller for aligning framed information bit strings during at least one of a writing and a reading phase of the at least one FIFO and based upon the string-based framing codes. All of the information symbol strings may have a same number of symbols.
The first device may comprise a scrambler for scrambling the information symbol strings, and the deskewer may similarly comprise a descrambler for descrambling received information symbol strings. Scrambling may facilitate clock recovery from the received symbol stings.
A method aspect of the invention is for communicating from a first device to a second device and incorporating efficient deskewing. More particularly, the method preferably comprises defining parallel communications channels between the first and second devices by operating a plurality of electrical-to-transtnission medium converters of the first device which are connected to at least one transmission medium, and operating a plurality of transmission medium-to-electrical converters at the second device which are connected to the at least one transmission medium. The method also preferably includes determining and appending a string-based framing code to each information symbol string of information symbol strings at the first device for transmission in parallel therefrom over respective parallel communications channels, each string-based framing code being based upon at least some of the information symbols in the respective information symbol string.
In addition, the method also preferably includes deskewing received information symbol strings at the second device by aligning received information symbol strings based upon the string-based framing codes. Accordingly, lower rate converters can be used at significant costs savings and while providing a desired relatively high overall information throughput rate.
The electrical-to-transmission medium converters and the transmission medium-to-electrical converters may be for at least one wireline transmission medium, at least one wireless transmission medium, or at least one optical transmission medium. Of course the method may also include the step of multiplexing signals from the plurality of electrical-to-transmission medium converters along a common transmission medium, and demultiplexing the signals at the second device.
The information symbols may be binary bits. The step of determining and appending may thus include determining an appending cyclic redundancy checking (CRC) codes to respective information bit strings. Thus, the step of deskewing preferably comprises framing the information bit strings based upon the CRC codes.
The step of deskewing may include the steps of: framing information bit strings based upon the respective string-based framing codes; and aligning framed information bit strings relative to one another and based upon the string-based framing codes. The step of aligning, in turn, may comprise buffering framed information bits in at least one first-in-first-out (FIFO) device; and aligning framed information bit strings during at least one of a writing and a reading phase of the at least one FIFO device and based upon the string-based framing codes.